Large-scale computer storage systems typically comprise multiple arrays of storage devices. An example of such as system is the IBM Enterprise Storage Server® (ESS), sold by IBM Corporation of Armonk, N.Y. The ESS comprises a control unit (CU), typically made up of a cluster of microprocessors, having a cache memory and non-volatile storage. The controller supports one or more logical subsystems (LSS) or control unit images, each of which comprises an array of storage volumes, typically made up of magnetic disks.
The Enterprise Systems Connection Architecture® (ESCON®) standard was defined by IBM® to enable reliable, high-speed serial data transfer over long distances between host processors and storage systems. ESCON is described in IBM publication SA22-7202-02, entitled Enterprise Systems Architecture/390: ESCON I/O Interface (IBM Corporation, Armonk, N.Y., 1992), which is incorporated herein by reference. ESCON specifies two levels of protocols: the link level and the device level. The link level describes the physical characteristics of a channel path (between a host and storage subsystem), along with the associated protocols required for the transmission and reception of frames over the path. The device level relates primarily to the protocols associated with the execution of an input/output (I/O) operation for a specific I/O device.
ESCON link-level addressing provides an eight-bit link address for each storage system CU, with a four-bit logical (port) address extension identifying an LSS. The combination of the link address and logical extension is referred to as a logical address. Since the logical address extension is four bits long, up to 16 LSSs are supported, at logical addresses 0 through 15, in each CU in the ESCON network. Each data frame transmitted over an ESCON link has a link header that specifies the link address and logical address of the source and destination of the frame.
Following the header, each link frame contains an information field. When the link frame is a device frame (i.e., a link frame relating to a specific device I/O operation), the information field contains a device header and a device information block. The device header includes an eight-bit device address; thus, up to 256 storage devices can be attached to a given LSS. The information field can carry commands, data, control information and status. The commands are normally specified by a chain of Channel Command Words (CCWs) provided by the I/O program being executed in “count, key, data” (CKD) format. CKD is the disk architecture used in IBM S/390® systems and allows data records to be of variable size (count). A command to write to a given target storage volume is followed by a sequence of one or more data frames containing the data to be written. Typically, the system to which the data were written returns a status frame describing the results of the completion of the I/O operation (success or failure).
To write data to a target storage volume, the channel subsystem of the host (i.e., the host I/O interface) selects the physical and logical link addresses of the corresponding LSS and the device address of the volume and submits a chain of one or more CCWs. An ESCON channel path, called a logical path, is set up between the channel subsystem and the addressed LSS. To write data to a target storage volume, the channel subsystem of the host (i.e., the host I/O interface) selects an available logical path that connects it to the target LSS and sends the chain of CCWs to the desired target volume, indicated by the device address. Thus, selection of the logical path determines the source and target LSSs, while the device address determines to which device in the target LSS the I/O will be directed. The logical path may be used exclusively for data transfer between the host and the specified storage device until the chain is completed. This type of channel use is referred to as “selector” mode, as opposed to “multiplexer” mode, which enables sharing of the link by several chains, each using a different logical path established over the link. At the completion of the chain, the storage device returns an “ending status” indication, and the channel path is released.
Data backup is a standard part of all large-scale computer data storage systems (and most small systems, as well). Data written to a primary storage medium, such as a volume on a local storage subsystem, are copied to a backup medium, typically another volume on a remote storage subsystem, which can then be used for recovery in case a disaster causes the data on the primary medium to be lost. A number of different copy service functions of the ESS exist that can be used for this purpose. Among these functions is peer-to-peer remote copy (PPRC) in which a mirror copy of a source volume on a primary storage subsystem is created on a secondary storage subsystem. PPRC is implemented using a direct ESCON link between the primary and secondary subsystems, both residing in respective CUs (as opposed to the host-to-CU type of ESCON link described previously). When an application on a host processor writes to a PPRC volume on the primary subsystem, the corresponding data updates are entered into cache memory and non-volatile storage at the primary subsystem. The CU of the primary subsystem then sends the updates over the link to the secondary subsystem, using the data link and device level protocols described above. When the secondary subsystem has placed the data in its own cache and non-volatile storage, it acknowledges receipt of the data, and the primary subsystem then signals the application that the write operation is complete.
Many disks and disk systems do not support the CKD format specified by ESCON, but rather comply with the Small Computer System Interface (SCSI) standard. SCSI devices are addressed using “Write Fixed Block Data” commands. These commands are similar in form to CKD commands, but not, identical. The SCSI command set is described in standard X3.131:1994 of the American National Standards Institute (ANSI—Washington, D.C.). Among other differences, data can be written to SCSI devices only in blocks of fixed size, rather than in variable-size records as supported by CKD. Current-generation storage systems, such as the above-mentioned IBM ESS, allow both CKD and SCSI devices to be connected to and controlled by the same CU. However, in order to comply with the ESCON link-level and device-level protocols, LSS0 through LSS15 must contain only CKD devices. Higher LSS addresses (LSS16 and up) can be used for SCSI devices. Because ESCON provides only a four-bit logical address, however, there is currently no straightforward way of addressing any LSS above LSS15 over an ESCON link while maintaining full compliance with the ESCON protocols. This limitation interferes with the possibility of carrying out PPRC operations between SCSI disks over ESCON links.
LSSs may also be attached to host or other devices through another IBM-developed architecture, Fiber Channel Architecture (FICON®). In FICON, an eight-bit logical address extension identifies each LSS. Since the logical address extension is eight bits long, up to 256 LSSs may be supported, at logical addresses 0 through 255, in each CU in the FICON network. Again, however, because ESCON provides only a four-bit logical address, it is not currently possible to access LSSs in the range above LSS15 to which data has been written through a FICON link while maintaining full compliance with the ESCON protocols. Nor is it possible to access LSSs in the range above LSS255 through a FICON link while maintaining full compliance with the FICON protocols.